#include <iostream>
#include <vector>
#include <algorithm>
#define endl '\n'
#define int long long
#define pii pair<int, int>
using namespace std;

// 已知
int n, m;
int s[11], c[11]; // 从数据量看出来就要用dp或者搜索
double p[11];
// 未知
double ans, f[1 << 10][1 << 14];

void input()
{
    cin >> n >> m;
    for (int i = 0; i < n; ++i)
    {
        cin >> s[i] >> c[i] >> p[i];
        p[i] /= 100;
    }
}

void dp()
{
    for (int i = (1 << n) - 1; i >= 0; --i) // 从1……111枚举到0……000，枚举状态
    {
        for (int j = m; j >= 0; j--) // 枚举背包容量
        {
            for (int q = 0; q < n; ++q) // 枚举题目
            {
                if (!(i >> q & 1)) // 如果第q个题没回答
                {
                    if (j + c[q] <= m) // 如果钱够
                    {
                        double s1 = p[q] * (s[q] + f[i | (1 << q)][j + c[q]]); // 答对的期望，要把q这道题的状态变为已答
                        double s2 = (1 - p[q]) * f[i][j + c[q]];               // 答错的期望
                        f[i][j] = max(f[i][j], s1 + s2);                       //  答对答错的期望都要算进去
                    }
                }
            }
        }
    }
}
signed main()
{
    input();
    dp();
    printf("%.7lf", f[0][0]); // 所有题都答完，钱花光
    return 0;
}









